group { name: "elm/index/base/vertical/default";
   parts {
      part { name: "bg"; type: RECT;
         description { state: "default" 0.0;
            rel.to: "elm.swallow.index.0";
            color: 0 0 0 0; // no cc
         }
      }
      part { name: "clip"; type: RECT; mouse_events:  0;
         description { state: "default" 0.0;
            visible:  0;
            color: 255 255 255 0; // no cc
         }
         description { state: "active" 0.0;
            visible:  1;
            color: 255 255 255 255; // no cc
         }
      }
      part { name: "clip2"; type: RECT; mouse_events:  0;
         clip_to: "clip";
         description { state: "default" 0.0;
            visible: 0;
            color: 255 255 255 0; // no cc
         }
         description { state: "active" 0.0;
            visible:  1;
            color: 255 255 255 255; // no cc
         }
      }
      part { name: "elm.swallow.index.0"; type: SWALLOW;
         scale: 1;
         clip_to: "clip";
         description { state: "default" 0.0;
            align: 1.0 0.5;
            fixed: 1 1;
            offscale;
            rel1.relative: 1.0 0.5;
            rel1.offset: -1 4;
            rel2.relative: 1.0 0.5;
            rel2.offset: -1 -5;
            min: 32 0;
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         clip_to: "clip2";
         description { state: "default" 0.0;
            align: 1.0 0.5;
            fixed: 1 1;
            offscale;
            rel1 {
               to_x: "elm.swallow.event.0";
               to_y: "elm.dragable.pointer";
               relative: 0.0 0.5;
               offset: -48 0;
            }
            rel2 {
               to_x: "elm.swallow.event.0";
               to_y: "elm.dragable.pointer";
               relative: 0.0 0.5;
               offset: -48 -1;
            }
            color_class: "/fg/normal/index/base/text";
            text { font: FNBD; size: 20;
               min: 1 1;
               ellipsis: -1;
               align: 1.0 0.5;
               text_class: "index_highlight_text";
            }
         }
      }
      part { name: "elm.dragable.pointer"; type: RECT; mouse_events: 0;
         clip_to: "clip";
         scale: 1;
         dragable {
            x: 1 1 0;
            y: 1 1 0;
         }
         description { state: "default" 0.0;
            fixed: 1 1;
            min: 8 8;
            max: 8 8;
            visible: 0;
            rel2.relative: 0.0 0.0;
            rel2.offset: 0 0;
         }
      }
      part { name: "elm.swallow.event.0"; type: SWALLOW;
         description { state: "default" 0.0;
            align: 1.0 0.5;
            fixed: 1 1;
            rel1.relative: 1.0 0.0;
            rel1.offset: -1 0;
         }
      }
      part { name: "access"; type: RECT;
         repeat_events: 1;
         description { state: "default" 0.0;
            rel.to:"elm.swallow.event.0";
            color: 0 0 0 0; // no cc
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         transition: DECELERATE 0.5;
         target: "clip";
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         transition: DECELERATE 0.5;
         target: "clip";
      }
      program { signal: "elm,indicator,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         transition: DECELERATE 0.5;
         target: "clip2";
      }
      program { signal: "elm,indicator,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         transition: DECELERATE 0.5;
         target: "clip2";
      }
   }
}

group { name: "elm/index/item/vertical/default";
   data.item: "stacking" "below";
   parts {
      part { name: "base"; type: RECT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            color_class: "/dim/normal/index/item";
            offscale;
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/dim/selected/index/item";
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            offscale;
            rel.to: "base";
            rel1.offset: 4 4;
            rel2.relative: 0.5  1.0;
            rel2.offset: -5 -5;
            color_class: "/fg/normal/index/item/text";
            text { font: FNBD; size: 10;
               min: 1 1;
               ellipsis: -1;
               align: 0.5 0.5;
               text_class: "index_item_text";
            }
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/fg/selected/index/item/text";
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         target: "elm.text";
         after: "active_base";
      }
      program { name: "active_base";
         action: STATE_SET "active" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         target: "elm.text";
         after: "inactive_base";
      }
      program { name: "inactive_base";
         action: STATE_SET "default" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
   }
}

group { name: "elm/index/item_odd/vertical/default";
   data.item: "stacking" "above";
   data.item: "selectraise" "on";
   parts {
      part { name: "base"; type: RECT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            color_class: "/dim-alt/normal/index/item";
            offscale;
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/dim-alt/selected/index/item";
            rel1.offset: -16 0;
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            offscale;
            rel.to: "base";
            rel1.offset: 4 4;
            rel2.relative: 0.5  1.0;
            rel2.offset: -5 -5;
            color_class: "/fg-alt/normal/index/item/text";
            text { font: FNBD; size: 10;
               min: 1 1;
               ellipsis: -1;
               align: 0.5 0.5;
               text_class: "index_item_text";
            }
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/fg-alt/selected/index/item/text";
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         target: "elm.text";
         after: "active_base";
      }
      program { name: "active_base";
         action: STATE_SET "active" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         target: "elm.text";
         after: "inactive_base";
      }
      program { name: "inactive_base";
         action: STATE_SET "default" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
   }
}


//////////////////////////////////////////////////////////////////////////////


group { name: "elm/index/base/horizontal/default";
   parts {
      part { name: "bg"; type: RECT;
         description { state: "default" 0.0;
            rel.to: "elm.swallow.index.0";
            color: 0 0 0 0; // no cc
         }
      }
      part { name: "clip"; type: RECT; mouse_events:  0;
         description { state: "default" 0.0;
            visible:  0;
            color: 255 255 255 0; // no cc
         }
         description { state: "active" 0.0;
            visible:  1;
            color: 255 255 255 255; // no cc
         }
      }
      part { name: "clip2"; type: RECT; mouse_events:  0;
         clip_to: "clip";
         description { state: "default" 0.0;
            visible: 0;
            color: 255 255 255 0; // no cc
         }
         description { state: "active" 0.0;
            visible:  1;
            color: 255 255 255 255; // no cc
         }
      }
      part { name: "elm.swallow.index.0"; type: SWALLOW;
         scale: 1;
         clip_to: "clip";
         description { state: "default" 0.0;
            align: 0.5 1.0;
            fixed: 1 1;
            offscale;
            rel1.relative: 0.5 1.0;
            rel1.offset: 4 -1;
            rel2.relative: 0.5 1.0;
            rel2.offset: -5 -1;
            min: 0 32;
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         clip_to: "clip2";
         description { state: "default" 0.0;
            align: 0.5 1.0;
            fixed: 1 1;
            offscale;
            rel1 {
               to_x: "elm.dragable.pointer";
               to_y: "elm.swallow.event.0";
               relative: 0.5 0.0;
               offset: 0 -48;
            }
            rel2 {
               to_x: "elm.dragable.pointer";
               to_y: "elm.swallow.event.0";
               relative: 0.5 0.0;
               offset: -1 -48;
            }
            color_class: "/fg/normal/index/base/text";
            text { font: FNBD; size: 20;
               min: 1 1;
               ellipsis: -1;
               align: 0.5 1.0;
               text_class: "index_highlight_text";
            }
         }
      }
      part { name: "elm.dragable.pointer"; type: RECT; mouse_events: 0;
         clip_to: "clip";
         scale: 1;
         dragable {
            x: 1 1 0;
            y: 1 1 0;
         }
         description { state: "default" 0.0;
            fixed: 1 1;
            min: 8 8;
            max: 8 8;
            visible: 0;
            rel2.relative: 0.0 0.0;
            rel2.offset: 0 0;
         }
      }
      part { name: "elm.swallow.event.0"; type: SWALLOW;
         description { state: "default" 0.0;
            align: 0.5 1.0;
            fixed: 1 1;
            rel1.relative: 0.0 1.0;
            rel1.offset: 0 -1;
         }
      }
      part { name: "access"; type: RECT;
         repeat_events: 1;
         description { state: "default" 0.0;
            rel.to:"elm.swallow.event.0";
            color: 0 0 0 0; // no cc
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         transition: DECELERATE 0.5;
         target: "clip";
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         transition: DECELERATE 0.5;
         target: "clip";
      }
      program { signal: "elm,indicator,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         transition: DECELERATE 0.5;
         target: "clip2";
      }
      program { signal: "elm,indicator,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         transition: DECELERATE 0.5;
         target: "clip2";
      }
   }
}

group { name: "elm/index/item/horizontal/default";
   data.item: "stacking" "below";
   parts {
      part { name: "base"; type: RECT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            color_class: "/dim/normal/index/item";
            offscale;
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/dim/selected/index/item";
            rel1.offset: 0 -16;
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            offscale;
            rel.to: "base";
            rel1.offset: 4 4;
            rel2.relative: 1.0 0.0;
            rel2.offset: -5 4;
            color_class: "/fg/normal/index/item/text";
            align: 0.5 0.0;
            text { font: FNBD; size: 10;
               min: 1 1;
               ellipsis: -1;
               align: 0.5 0.0;
               text_class: "index_item_text";
               text: "XXX";
            }
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/fg/selected/index/item/text";
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         target: "elm.text";
         after: "active_base";
      }
      program { name: "active_base";
         action: STATE_SET "active" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         target: "elm.text";
         after: "inactive_base";
      }
      program { name: "inactive_base";
         action: STATE_SET "default" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
   }
}

group { name: "elm/index/item_odd/horizontal/default";
   data.item: "stacking" "above";
   data.item: "selectraise" "on";
   parts {
      part { name: "base"; type: RECT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            color_class: "/dim-alt/normal/index/item";
            offscale;
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/dim-alt/selected/index/item";
            rel1.offset: 0 -16;
         }
      }
      part { name: "elm.text"; type: TEXT; mouse_events: 0;
         scale: 1;
         description { state: "default" 0.0;
            offscale;
            rel.to: "base";
            rel1.offset: 4 4;
            rel2.relative: 1.0 0.0;
            rel2.offset: -5 4;
            color_class: "/fg-alt/normal/index/item/text";
            align: 0.5 0.0;
            text { font: FNBD; size: 10;
               min: 1 1;
               ellipsis: -1;
               align: 0.5 0.0;
               text_class: "index_item_text";
               text: "XXX";
            }
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/fg-alt/selected/index/item/text";
         }
      }
   }
   programs {
      program { signal: "elm,state,active"; source: "elm";
         action: STATE_SET "active" 0.0;
         target: "elm.text";
         after: "active_base";
      }
      program { name: "active_base";
         action: STATE_SET "active" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
      program { signal: "elm,state,inactive"; source: "elm";
         action: STATE_SET "default" 0.0;
         target: "elm.text";
         after: "inactive_base";
      }
      program { name: "inactive_base";
         action: STATE_SET "default" 0.0;
         target: "base";
         transition: DECELERATE 0.5;
      }
   }
}
